package com.jlpay.open.jlpay.sdk.java.model.base.response;

import com.fasterxml.jackson.databind.PropertyNamingStrategies;
import com.fasterxml.jackson.databind.annotation.JsonNaming;
import com.jlpay.open.jlpay.sdk.java.model.BaseResponse;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

/**
 * 银行卡bin信息
 *
 * @author zhangyongfeng
 * @date 2025/7/21
 */
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class)
public class MatchingCardbinResponse extends BaseResponse {

    /**
     * 分页起始
     */
    private Cardbin data;

    @Getter
    @Setter
    @AllArgsConstructor
    @NoArgsConstructor
    @JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class)
    public static class Cardbin {

        /**
         * 发卡行编号
         */
        private String bankCode;
        /**
         * 发卡行名称
         */
        private String insuerName;
        /**
         * 发卡机构代码
         */
        private String insuerId;
        /**
         * 卡bin
         */
        private String binCtt;
        /**
         * 卡名称
         */
        private String cardName;
        /**
         * 卡类型
         * 0-借记卡
         * 1-贷记卡
         * 2-预付费卡
         */
        private String cardFlag;
        /**
         * 卡组织标识
         * UnionPay-银联
         * AmEx-美国运通
         */
        private String orgCode;
    }
}
